<?php
include "base-files/pocitadlo_celkove.php";
$pocitadlo = pocitadlo_celkove();
?> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<!--Authors: Milan Švancara & Ondřej Wojewoda & Michal Huťka & Daniel Meisner-->
<?php include "base-files/head.php" //Vkládá připravenou hlavičku - atributy dopisovat do souboru head.php!!!! ?> 
<body>
<?php include "php-library/pripojeni_na_mysqli.php"; ?>
<?php include "php-library/funkce.php"; ?>


    <?php
		$budeme_zapisovat = true; // Rozhoduje o tom jestli jsou vstupy v pořádku
		if($_POST["odeslano"])  //overi jestli byl inzerat odeslan
		{
			/*Převedení poštovních proměnných */
			$email = $_POST["email"];
			$cena = $_POST["cena"];
			$nazev = $_POST["nazev"];
			$rok_vydani = $_POST["rok_vydani"];
			$autor = $_POST["autor"];
			$nakladatelstvi = $_POST["nakladatelstvi"];
			$predmet = $_POST["predmet"];
			$rocnik = $_POST["rocnik"];
			$popis = $_POST["popis"];
			$foto = $_POST["foto"];
			
			/*Obrana proti SQL injection a XSS */
			$email = htmlspecialchars(mysqli_real_escape_string($GLOBALS["pripojeni"],$email));
			$cena = htmlspecialchars(mysqli_real_escape_string($GLOBALS["pripojeni"],$cena));
			$nazev = htmlspecialchars(mysqli_real_escape_string($GLOBALS["pripojeni"],$nazev));
			$rok_vydani = htmlspecialchars(mysqli_real_escape_string($GLOBALS["pripojeni"],$rok_vydani));
			$autor = htmlspecialchars(mysqli_real_escape_string($GLOBALS["pripojeni"],$autor));
			$nakladatelstvi = htmlspecialchars(mysqli_real_escape_string($GLOBALS["pripojeni"],$nakladatelstvi));
			$rocnik = htmlspecialchars(mysqli_real_escape_string($GLOBALS["pripojeni"],$rocnik));
			$predmet = htmlspecialchars(mysqli_real_escape_string($GLOBALS["pripojeni"],$predmet));
			$popis = htmlspecialchars(mysqli_real_escape_string($GLOBALS["pripojeni"],$popis));	
			/* Captcha  */
			if($_SESSION["captcha_overeni"] != $_POST["captcha_overeni"])
			{
			 	 echo "<script>
				 	window.alert('Opsaný text nesouhlasí.');
			  </script>";
				$budeme_zapisovat = false;
			}
					
			/* Ověřování vstupu - email */
			if(!overeni_emailu($email))
			{
				echo "<script>
						 window.alert('Váš email je neplatný.');
					  </script>";
				$budeme_zapisovat = false;
			}
			/* Ověřování vstupu - cena */
			if(!overeni_ceny($cena))
			{
				echo "<script>
						 window.alert('Vaše částka je neplatná, zadejte ji prosím znovu.');
					  </script>";
				$budeme_zapisovat = false;
			}
			/* Ověření vstupu - popis */
			if(!overeni_delky($popis,300))
			{
				echo "<script>
						 window.alert('Váš popis je příliš dlouhý.');
					  </script>";
				$budeme_zapisovat = false;
			}
			/* Ověření vstupu - nazev */
			if(!overeni_delky($nazev,100,2))
			{
				echo "<script>
						 window.alert('Název knihy musí být v rozmezí 3 až 100 znaků');
					  </script>";
				$budeme_zapisovat = false;
			}
			/* Ověření vstupu - rok vydání */
			if(!(is_numeric($rok_vydani) and $rok_vydani >= 1600 and $rok_vydani <= date("Y")) and $rok_vydani != "")
			{
				echo "<script>
						 window.alert('Rok vydání je ve špatném formátu.');
					  </script>";
				$budeme_zapisovat = false;
			}
			/* Ověření vstupu - autor */
			if(!overeni_delky($nazev,100))
			{
				echo "<script>
						 window.alert('Jméno autora je příliš dlouhé. Maximální počet znaků je 100');
					  </script>";
				$budeme_zapisovat = false;
			}
			/* Ověření vstupu - nakladatelstvi */
			if(!overeni_delky($nakladatelstvi,100))
			{
				echo "<script>
						 window.alert('Název nakladatelství je příliš dlouhý. Maximální počet znaků je 100');
					  </script>";
				$budeme_zapisovat = false;
			}
			/* Ověření vstupu - nakladatelstvi */
			if(!is_numeric($predmet))
			{
				echo "<script>
						 window.alert('Zkontrolujte prosím výběr předmětu.');
					  </script>";
				$budeme_zapisovat = false;
			}
			if(!is_numeric($rocnik))
			{
				echo "<script>
						 window.alert('Zkontrolujte prosím výběr ročníku.');
					  </script>";
				$budeme_zapisovat = false;
			}
         /* Ověření sprostých slov */
			if(filtrslovcelek($popis) === false)
			{
				echo "<script>
						 window.alert('Smažte sprostá slova z popisu.');
					  </script>";
				$budeme_zapisovat = false;
			}
			/* Ověření délky slov */
			if(delkova_ochrana($popis) === false)
			{
				echo "<script>
						 window.alert('Popis obsahuje moc dlouhá slova.');
					  </script>";
				$budeme_zapisovat = false;
			}
			/* Ověření obrázku */
					$koncovky = array('jpg', 'jpeg', 'png', 'gif', 'pjpeg');
		
					if (!$_FILES || $_FILES["foto"]["error"] == UPLOAD_ERR_INI_SIZE) 
					{
						echo "<script>
						 window.alert('Soubor je příliš velký, maximální velikost je ".ini_get('upload_maxs_filesize').".\n');
					 </script>";
					 $budeme_zapisovat = false;
					} 
					elseif ($_FILES["foto"]["error"] and $_FILES["foto"]["error"] != UPLOAD_ERR_NO_FILE) 
					{
						echo "<script>
						 window.alert('Soubor se nepodařilo nahrát, kontaktujte prosím správce');
					 </script>";
					 $budeme_zapisovat = false;
					} 
					elseif (!in_array(strtolower(pathinfo($_FILES["foto"]["name"], PATHINFO_EXTENSION)), $koncovky) and $_FILES["foto"]["error"] != UPLOAD_ERR_NO_FILE) 
					{
						echo "<script>
						 window.alert('Koncovka souboru musí být jedna z: ".implode(", ", $koncovky)."');
					 </script>";
					$budeme_zapisovat = false;
					}
					 elseif ((!($imagesize = getimagesize($_FILES["foto"]["tmp_name"])) || $imagesize[2] > 3) and $_FILES["foto"]["error"] != UPLOAD_ERR_NO_FILE) 
					{
						echo "<script>
						 window.alert('Typ obrázku musí být JPG, PNG nebo GIF.\n');
					 </script>";
					 $budeme_zapisovat = false;
					}
						
			/* Zápis do tabulky inzeraty */
			if($budeme_zapisovat)
			{
				$kod = generovani_kodu();
				$cas = date("Y-m-d H:i:s");
				$tb = "inzerat_bez_isbn"; //Označení tabulky do které se zapisuje
				$uspesne_zapsano = mysqli_query($GLOBALS["pripojeni"], "INSERT INTO `burza`.`$tb` (`cena`, `email`, `popis`, `kod`, `datum_pridani`, `platnost_od`, `nazev`, `rok_vydani`, `autor`, `nakladatelstvi`, `predmet`, `rocnik`) VALUES ('$cena', '$email', '$popis', '$kod', '$cas', '$cas', '$nazev', '$rok_vydani', '$autor', '$nakladatelstvi' , '$predmet', '$rocnik');");
				if($uspesne_zapsano) //Přesměrování na index.php a následné vypsání zprávy o úspěšném přidání
				{
					/*Odesílání mailu */
					require 'php-library/PHPMailer-master/PHPMailerAutoload.php';

					$mail = new PHPMailer;
					$mail->setLanguage('cz');
					$mail->CharSet = 'UTF-8';
					$mail->isSMTP();                                      // Set mailer to use SMTP
					$mail->Host = 'smtp.gmail.com';  // Specify main and backup SMTP servers
					$mail->SMTPAuth = true;                               // Enable SMTP authentication
					$mail->Username = 'burza.gymkarvina@gmail.com';                 // SMTP username
					$mail->Password = 'Burza2015';                           // SMTP password
					$mail->SMTPSecure = 'tls';                            // Enable TLS encryption, `ssl` also accepted
					$mail->Port = 587;                                    // TCP port to connect to
					
					$mail->From = 'burza.gymkarvina@gmail.com';
					$mail->FromName = 'Burza';
					$mail->addAddress($email);     // Příjemce
					
					
					$mail->WordWrap = 50;                                 // Set word wrap to 50 characters
					$mail->isHTML(true);                                  // Set email format to HTML
					
					$mail->Subject = 'Přidání inzerátu';
					$mail->Body    = 'Dobrý den,<br />
									  úspěšně jste přidali inzerát na Burzu učebnic gymnázia Karviná<br />
									  Údaje:
									  Název: '.$nazev.' <br />
									  Cena: '.$cena.' Kč <br />
									  Popis: '.$popis.' <br />
									  <b>Kód vašeho inzerátu: '.$kod.'</b> <br />
									  S přáním pěkného dne <br />
									  Tým Burzy učebnic gymnázium Karviná';
					$mail->AltBody = 'Dobrý den, úspěšně jste přidali inzerát na Burzu učebnic gymnázia Karviná.
										Kód vašeho inzerátu je: '.$kod.'
										S přáním pěkného dne
									  Tým Burzy učebnic gymnázium Karviná';
					
					if(!$mail->send()) 
					{
						echo "<script>
						 window.alert('Omlouváme se, ale vyskytla se chyba. Kontaktujte, prosím, správce serveru');
						 </script>";
						die();
					} 

 
					/* Konec odesílání mailu */
					/* Nahrání obrázku */
					//získání id inzerátu
					$query = mysqli_query($GLOBALS["pripojeni"],"SELECT `id` FROM `inzerat_bez_isbn` WHERE $kod = `kod` LIMIT 1");
					$query = mysqli_fetch_array($query);
						//Zmenšení a přemíštění obrázku
						include "php-library/smart_resize_image.function.php";
						smart_resize_image($_FILES["foto"]["tmp_name"] , null, 225 , 300 , true , "img/id/".$query["id"].".".pathinfo($_FILES["foto"]["name"], PATHINFO_EXTENSION) , true , false ,100 );
					}
					
					/*Přesměrování na index.php */
					header("Location: index.php?zprava=\"Váš inzerát byl úspěšně přidán\\nkód pro editaci je: $kod\"");
					exit;	
			}
		}
?>
<?php include "base-files/menu2.php"; ?>

<div class="obsah">
    	<div class="obalNabidek">
        <br /><br />

        	
        	<form method="post" name="form" enctype="multipart/form-data" action="<?php echo $_SERVER['PHP_SELF']; ?>">
            <div class="zarovnavac">
            <table style="margin:auto; border: none;">
        <tr><td class="bunky_formular bunky_vlevo">E-mail*: </td><td class="bunky_formular bunky_vpravo"><input class="formular" type="email" name="email" value="<?php echo htmlspecialchars($_POST["email"]); ?>" oninput="kontrola_email()"  /><?php tooltip("Váš e-mail nebude nikde zobrazen, a ani využit k rozesílání nevyžádané pošty. Zájemci budou mít možnost Vás kontaktovat přes webový formulář."); ?><span id="email_kont"></span></td>
        
        <tr><td class="bunky_formular bunky_vlevo">Název*: </td><td class="bunky_formular bunky_vpravo"><input class="formular" type="text" name="nazev" oninput="kontrola_nazev()" value="<?php primsec_str(htmlspecialchars($_POST["nazev"]),$_SESSION["kniha"]["items"][0]["volumeInfo"]["title"]." - ".$_SESSION["kniha"]["items"][0]["volumeInfo"]["subtitle"]); ?>" /><span id="nazev_kont"></span></td>
     
        <tr><td class="bunky_formular bunky_vlevo">Cena*: </td><td class="bunky_formular bunky_vpravo"><input class="formular" type="number" name="cena" placeholder="Cena v Kč" oninput="kontrola_ceny()" value="<?php echo htmlspecialchars($_POST["cena"]); ?>" /><span id="cena_kont"></span></td>
        
        <tr><td class="bunky_formular bunky_vlevo">Rok vydání: </td><td class="bunky_formular bunky_vpravo"><input class="formular" type="number" oninput="kontrola_rok()" name="rok_vydani" value="<?php primsec_str(htmlspecialchars($_POST["rok_vydani"]),$_SESSION["kniha"]["items"][0]["volumeInfo"]["publishedDate"]); ?>" /><span id="rok_kont"></span></td>
        
        <tr><td class="bunky_formular bunky_vlevo">Autor: </td><td class="bunky_formular bunky_vpravo"><input class="formular" type="text" oninput="kontrola_autor()" name="autor" value="<?php 
		$i = 0;
		foreach($_SESSION["kniha"]["items"][0]["volumeInfo"]["authors"] as $autor)
		{
			if($i == 0)
				$autori .= $autor;
			else
				$autori .= ", ".$autor;	
			$i++;
		}
		 primsec_str(htmlspecialchars($_POST["autor"]),$autori); ?>" /><span id="autor_kont"></span></td>
        
        <tr><td class="bunky_formular bunky_vlevo">Nakladatelství: </td><td class="bunky_formular bunky_vpravo"><input class="formular" type="text" name="nakladatelstvi" oninput="kontrola_nakladatelstvi()" value="<?php echo htmlspecialchars($_POST["nakladatelstvi"]); ?>" /><span id="nakla_kont"></span></td>
        
        <tr><td class="bunky_formular bunky_vlevo">Ročník: </td><td class="bunky_formular bunky_vpravo"><?php rocnik($_POST["rocnik"]); ?></td>
        
        <tr><td class="bunky_formular bunky_vlevo">Předmět: </td><td class="bunky_formular bunky_vpravo"><?php predmet($_POST["predmet"]); ?></td>
        
        <tr><td class="bunky_formular bunky_vlevo">Popis: </td><td class="bunky_formular bunky_vpravo"><textarea class="formular2" oninput="kontrola_popis()" rows="4" name="popis" placeholder="Sem zadajte popis knihy"><?php echo htmlspecialchars($_POST["popis"]);?></textarea></td>
       <tr><td class="bunky_formular bunky_vlevo">Počet zbývajících znaků:</td><td class="bunky_formular bunky_vpravo"><span id="zbyvajicich">300</span></td>
        
        <tr><td class="bunky_formular bunky_vlevo">Foto: </td><td class="bunky_formular bunky_vpravo"><input class="formular" type="file" name="foto" /><?php tooltip("Obrázky se deformují v poměru 3:4. Pro ideální vzhled nahrávejte nejlépe v tomto poměru."); ?></td>
        </table>
        <br /><br />
        <img src='php-library/vykresleni_captcha.php' /> 
        <br /><br />
        Prosím opište text: <input type='text' size='4' name='captcha_overeni'>
        <br />
    <div class="zarovnavac">
    </div>
        <br /><br />
        <input class="filtrovat3" type="submit" name="odeslano" value="Přidat inzerát" />
        </div>
    </form>  
      
    
        
<?php $_SESSION["kniha"] = ""; include "base-files/footer.php"; ?>
<script language="javascript">
function kontrola_email() {
    var mail = document.form.email.value;
    var atpos = mail.indexOf("@");
    var dotpos = mail.lastIndexOf(".");
    if (atpos< 1 || dotpos<atpos+2 || dotpos+2>=mail.length) 
	{
        window.document.getElementById("email_kont").innerHTML = "&nbsp;✗";
        return
    }
	else if(!mail)
	{
		window.document.getElementById("email_kont").innerHTML = "&nbsp;";
		return	
	}
	else
	{
		window.document.getElementById("email_kont").innerHTML = "&nbsp;✓";
		return
	}
}
function kontrola_ceny() {
	var cena = document.form.cena.value;
	if(cena > 0 && cena < 10000)
	{
		window.document.getElementById("cena_kont").innerHTML = "&nbsp;✓";
		return
	}
	else if(cena.length == 0)
	{
		window.document.getElementById("cena_kont").innerHTML = "&nbsp;";
		return
	}
	else
	{
		window.document.getElementById("cena_kont").innerHTML = "&nbsp;✗";
		return
	}
}
function kontrola_popis() {
	var pocet_znaku = document.form.popis.value.length;
	var zbyvajicich = 300 - pocet_znaku;
	window.document.getElementById("zbyvajicich").innerHTML = zbyvajicich;
	if(zbyvajicich < 0)
	{
		document.form.popis.style.color = "red"
	}
	if(zbyvajicich >= 0)
	{
		document.form.popis.style.color = "black"
	}
}
function kontrola_nazev() {
	var znaku = document.form.nazev.value.length;
	if(znaku < 100 && znaku > 2)
	{
		window.document.getElementById("nazev_kont").innerHTML = "&nbsp;✓";
		return	
	}
	else
	{
		window.document.getElementById("nazev_kont").innerHTML = "&nbsp;✗";
		return
	}
	
}
function kontrola_autor() {
	var znaku = document.form.autor.value.length;
	if(znaku < 100)
	{
		window.document.getElementById("autor_kont").innerHTML = "&nbsp;✓";
		return	
	}
	else
	{
		window.document.getElementById("autor_kont").innerHTML = "&nbsp;✗";
		return
	}
	
}
function kontrola_nakladatelstvi() {
	var znaku = document.form.nakladatelstvi.value.length;
	if(znaku < 100)
	{
		window.document.getElementById("nakla_kont").innerHTML = "&nbsp;✓";
		return	
	}
	else
	{
		window.document.getElementById("nakla_kont").innerHTML = "&nbsp;✗";
		return
	}
	
}
function kontrola_rok() {
	var rok = document.form.rok_vydani.value;
	var d = new Date();
	if(rok >= 1600 && rok <= d.getFullYear())
	{
		window.document.getElementById("rok_kont").innerHTML = "&nbsp;✓";
		return
	}
	else if(rok.length == 0)
	{
		window.document.getElementById("rok_kont").innerHTML = "&nbsp;";
		return
	}
	else
	{
		window.document.getElementById("rok_kont").innerHTML = "&nbsp;✗";
		return
	}
}
</script>
</body>
</html>